package com.rc.saas.tenant.service.operator;

import com.github.pagehelper.PageInfo;
import com.rc.saas.tenant.base.BaseService;
import com.rc.saas.tenant.common.vo.TResponse;
import com.rc.saas.tenant.mapper.operator.RcOperatorMapper;
import com.rc.saas.tenant.mapper.operator.TenantOperatorMenuMapper;
import com.rc.saas.tenant.model.operator.*;
import com.rc.saas.tenant.search.account.WithdrawMagSearch;
import com.rc.saas.tenant.vo.account.WithDrawManagerDetailVo;
import com.rc.saas.tenant.vo.account.WithDrawManagerVo;
import com.rc.saas.tenant.vo.elec.ElecCountVo;

import java.util.List;

/**
 * 加盟商service
 */
public interface RcOperatorService extends BaseService<Long, RcOperator, RcOperatorExample, RcOperatorMapper> {

    List<RcOperator> loadOperator(String loginName);

    List<RcOperator> selectOperators(String tenantCode);

    PageInfo listPageOperator(String operatorName, Integer pageNo, Integer pageSize);

    void updateOperatorApplyForAudit(Long id, Long memberId, String status, String remark);

    TResponse saveOperator(String tenantCode, RcOperator operator);

    void deleteOperator(Long id);

    RcOperator selectOperatorApplyByOperator(String operator);

    PageInfo<WithDrawManagerVo> listWithdrawManagerVo(WithdrawMagSearch withdrawMagSearch);

    PageInfo<WithDrawManagerDetailVo> listWithdrawManagerDetailVo(WithdrawMagSearch withdrawMagSearch);

    TResponse addMember(String moile);

    ElecCountVo loadElecCount(Long operatorId);

    RcOperator selectMobile(String mobile);
}